package com.wanghaixin.service;

import com.wanghaixin.dto.DataGridResult;
import com.wanghaixin.dto.QueryDTO;
import com.wanghaixin.pojo.SysMenu;
import com.wanghaixin.utils.R;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * @Auther: 王海新
 * @Date: 2020/10/22 17:11
 * @Description:
 */
public interface MenuService {

    /*********************************************************************************************************************
     * @Author:  王海新
     * @Date:  8:08  2020/10/23
     * @Version:  1.0.0
     * @Description:  分页查询/搜索/排序
     */
    public DataGridResult findMenu(QueryDTO queryDTO);

    /*********************************************************************************************************************
     * @Author:  王海新
     * @Date:  8:09  2020/10/23
     * @Version:  1.0.0
     * @Description: 批量删除
     */
    public R deleteMenu(List<Long> ids);

    /*********************************************************************************************************************
     * @Author:  王海新
     * @Date:  9:25  2020/10/23
     * @Version:  1.0.0
     * @Description:  菜单树形树结构
     */
    public R selectMenu();

    /*********************************************************************************************************************
     * @Author:  王海新
     * @Date:  11:07  2020/10/23
     * @Version:  1.0.0
     * @Description:  菜单添加功能
     */
    public  R saveMenu(SysMenu sysMenu);

    /*********************************************************************************************************************
     * @Author:  王海新
     * @Date:  11:32  2020/10/23
     * @Version:  1.0.0
     * @Description:  根据id查单条数据
     */
    public R findMenuById(Long menuId);

    /*********************************************************************************************************************
     * @Author:  王海新
     * @Date:  19:57  2020/10/23
     * @Version:  1.0.0
     * @Description:  实现单条数据的修改
     */
    public R updateMenu(SysMenu sysMenu);

    /*********************************************************************************************************************
     * @Author:  王海新
     * @Date:  11:16  2020/10/25
     * @Version:  1.0.0
     * @Description:  根据用户id查询用户菜单权限
     */
    public List<String> findPermsByUserId( Long userId);

    /*********************************************************************************************************************
     * @Author:  王海新
     * @Date:  11:35  2020/10/28
     * @Version:  1.0.0
     * @Description:  动态菜单，根据用户的信息显示对应的菜单
     */
    public R findUserMenu(Long userId);
}
